This invention relates generally to optical readers in general and, in particular, to an optical reader configured to read fine print indicia.
Bar code symbols are being employed in an ever-increasing number of applications, and the information requirements of such symbols are growing.
In recent years, there has been an increasing effort to encode large amounts of data into bar code symbols. New bar code symbol types, including 2D symbols such as stacked 1D and matrix symbols have become available which are specifically designed to increase the amount of data per area that can be encoded into a symbol.
In addition to utilizing new types of bar code symbols, users of bar code symbols have been printing such symbols in smaller sizes and in increasingly higher densities. The bar and space patterns of bar code symbols, whether 1D or 2D, are being printed and applied to items in increasingly finer prints.
The fine print of many bar code symbols in use today has resulted in an increase in the resolution requirements of optical reading devices which read such symbols. In the prior art, there has been suggested, in general, two approaches for addressing these increased resolution requirements.
The first approach suggested in the prior art for increasing reader resolution is to increase the pixel density of an image sensor used in an optical reader. This solution is highly effective performance-wise, but is also highly expensive. For purposes of illustrating the cost of increasing pixel density, a 1000 by 1000 pixel array sensor is currently approximately 8 times the cost of a 256 by 256 pixel array sensor. Incorporating a higher density pixel array into a reader also significantly increases data storage and data processing costs.
A second approach suggested by the prior art for increasing reader resolution is to adjust the reader optics so as to increase the magnification of captured scenes. This solution comes with the price of decreasing the area of the reader""s field of view, however.
There is a need for a low cost high performance optical reader which is capable of reading fine print bar code symbols which are finding increased use.
According to its major aspects and broadly stated, the present invention is a method for decoding fine print bar code symbols. The method includes certain image data binarization steps which facilitate the reading of finer print symbols without requiring that the resolution of the reader be enhanced by altering hardware aspects of the reader.
In the present invention, a bar code reader captures an initial image map corresponding to a scene, then subjects the initial image map to an interpolation step wherein values for constructed pixels (pixels positionally intermediate pixels of the initial image map) are interpolated as a function of the initial image map pixel values bordering the constructed pixels.
After an interpolated image map is constructed, the interpolated image map is subjected to a binarization step wherein gray scale pixel values of the interpolated image map are converted into binary (1 or 0) pixel values by way of a thresholding process. In the thresholding process, gray scale pixel values are compared to a threshold (which may vary across the image) in the gray scale range, then set to 1 if they are above the threshold and set to 0 if below the threshold. Interpolating constructed pixel values before binarizing the interpolated image map decreases the amount of image information that would otherwise be lost by binarizing an initially captured image map image directly as in a prior art decoding method.
The pixels of an image map that are subjected to a high resolution binarization process in which constructed pixel values are interpolated from existing pixel values may be defined according to a xe2x80x9ctile binarizationxe2x80x9d process. In a tile binarization process pixels of an image map are divided into a plurality of tiles, each comprising a predetermined number of pixels. Pixels of a given tile are subjected to binarization only when a pixel of the tile or a pixel in proximity with the tile is needed for analysis. In one embodiment of the invention, a reader binarizes tile pixels according to a low resolution binarization process when searching for decodable indicia in image data and binarizes tile pixels according to a high resolution binarization process when decoding decodable indicia which has been located.
These and other details, advantages and benefits of the present invention will become apparent from the detailed description of the preferred embodiment herein below.